﻿namespace NEvoWeb.Modules.NB_Store
{
    using DotNetNuke.Entities.Modules;
    using DotNetNuke.Services.Exceptions;
    using DotNetNuke.Services.Localization;
    using Microsoft.VisualBasic.CompilerServices;
    using System;
    using System.Runtime.CompilerServices;
    using System.Web.UI;
    using System.Web.UI.HtmlControls;
    using System.Web.UI.WebControls;

    public class ProductListSettings : BaseModuleSettings
    {
        [AccessedThroughProperty("chkCascadeResults")]
        private CheckBox _chkCascadeResults;
        [AccessedThroughProperty("chkDefaultOrderDESC")]
        private CheckBox _chkDefaultOrderDESC;
        [AccessedThroughProperty("chkExcludeFeatured")]
        private CheckBox _chkExcludeFeatured;
        [AccessedThroughProperty("chkExcludeProduct")]
        private CheckBox _chkExcludeProduct;
        [AccessedThroughProperty("chkIncrementCart")]
        private CheckBox _chkIncrementCart;
        [AccessedThroughProperty("chkIndexProducts")]
        private CheckBox _chkIndexProducts;
        [AccessedThroughProperty("chkNoRedirect")]
        private CheckBox _chkNoRedirect;
        [AccessedThroughProperty("chkRedirectToCart")]
        private CheckBox _chkRedirectToCart;
        [AccessedThroughProperty("chkShowSubMenu")]
        private CheckBox _chkShowSubMenu;
        [AccessedThroughProperty("chkSkipList")]
        private CheckBox _chkSkipList;
        [AccessedThroughProperty("chkStaticListView")]
        private CheckBox _chkStaticListView;
        [AccessedThroughProperty("chkStaticTemplates")]
        private CheckBox _chkStaticTemplates;
        [AccessedThroughProperty("chkTabDefaultRedirect")]
        private CheckBox _chkTabDefaultRedirect;
        [AccessedThroughProperty("ddlAlterTemplate")]
        private DropDownList _ddlAlterTemplate;
        [AccessedThroughProperty("ddlDefaultCategory")]
        private DropDownList _ddlDefaultCategory;
        [AccessedThroughProperty("ddlDefaultOrder")]
        private DropDownList _ddlDefaultOrder;
        [AccessedThroughProperty("ddlDetailHeaderText")]
        private DropDownList _ddlDetailHeaderText;
        [AccessedThroughProperty("ddlDetailTemplate")]
        private DropDownList _ddlDetailTemplate;
        [AccessedThroughProperty("ddlDirection")]
        private DropDownList _ddlDirection;
        [AccessedThroughProperty("ddlHeaderText")]
        private DropDownList _ddlHeaderText;
        [AccessedThroughProperty("ddlItemStyleHorizontalAlign")]
        private DropDownList _ddlItemStyleHorizontalAlign;
        [AccessedThroughProperty("ddlLayout")]
        private DropDownList _ddlLayout;
        [AccessedThroughProperty("ddlListHeaderText")]
        private DropDownList _ddlListHeaderText;
        [AccessedThroughProperty("ddlTabDefaultRedirect")]
        private DropDownList _ddlTabDefaultRedirect;
        [AccessedThroughProperty("ddlTemplate")]
        private DropDownList _ddlTemplate;
        [AccessedThroughProperty("dshBasic")]
        private UserControl _dshBasic;
        [AccessedThroughProperty("dshOther")]
        private UserControl _dshOther;
        [AccessedThroughProperty("dshSubMenu")]
        private UserControl _dshSubMenu;
        [AccessedThroughProperty("dshTabs")]
        private UserControl _dshTabs;
        [AccessedThroughProperty("dshTemplates")]
        private UserControl _dshTemplates;
        [AccessedThroughProperty("lstBrowseMode")]
        private RadioButtonList _lstBrowseMode;
        [AccessedThroughProperty("lstModuleTitle")]
        private DropDownList _lstModuleTitle;
        [AccessedThroughProperty("lstProductTabs")]
        private DropDownList _lstProductTabs;
        [AccessedThroughProperty("lstTabs")]
        private DropDownList _lstTabs;
        [AccessedThroughProperty("plAlternatingItemStyleCssClass")]
        private UserControl _plAlternatingItemStyleCssClass;
        [AccessedThroughProperty("plAlterTemplate")]
        private UserControl _plAlterTemplate;
        [AccessedThroughProperty("plBrowseMode")]
        private UserControl _plBrowseMode;
        [AccessedThroughProperty("plCascadeResults")]
        private UserControl _plCascadeResults;
        [AccessedThroughProperty("plCategoryMessage")]
        private UserControl _plCategoryMessage;
        [AccessedThroughProperty("plCellPadding")]
        private UserControl _plCellPadding;
        [AccessedThroughProperty("plCellSpacing")]
        private UserControl _plCellSpacing;
        [AccessedThroughProperty("plColumns")]
        private UserControl _plColumns;
        [AccessedThroughProperty("plColWidth")]
        private UserControl _plColWidth;
        [AccessedThroughProperty("plCSS")]
        private UserControl _plCSS;
        [AccessedThroughProperty("plCssBuyButton")]
        private UserControl _plCssBuyButton;
        [AccessedThroughProperty("plCssClass")]
        private UserControl _plCssClass;
        [AccessedThroughProperty("plchkTabDefaultRedirect")]
        private UserControl _plchkTabDefaultRedirect;
        [AccessedThroughProperty("plDefaultCategory")]
        private UserControl _plDefaultCategory;
        [AccessedThroughProperty("plDefaultOrder")]
        private UserControl _plDefaultOrder;
        [AccessedThroughProperty("plDefaultOrderDESC")]
        private UserControl _plDefaultOrderDESC;
        [AccessedThroughProperty("plDetailHeaderText")]
        private UserControl _plDetailHeaderText;
        [AccessedThroughProperty("plDetailTemplate")]
        private UserControl _plDetailTemplate;
        [AccessedThroughProperty("plDetailThumbnailSize")]
        private UserControl _plDetailThumbnailSize;
        [AccessedThroughProperty("plDirection")]
        private UserControl _plDirection;
        [AccessedThroughProperty("plExcludeFeatured")]
        private UserControl _plExcludeFeatured;
        [AccessedThroughProperty("plExcludeProduct")]
        private UserControl _plExcludeProduct;
        [AccessedThroughProperty("plGalleryThumbnailSize")]
        private UserControl _plGalleryThumbnailSize;
        [AccessedThroughProperty("plHeaderText")]
        private UserControl _plHeaderText;
        [AccessedThroughProperty("plIncrementCart")]
        private UserControl _plIncrementCart;
        [AccessedThroughProperty("plIndexProducts")]
        private UserControl _plIndexProducts;
        [AccessedThroughProperty("plItemStyleCssClass")]
        private UserControl _plItemStyleCssClass;
        [AccessedThroughProperty("plItemStyleHeight")]
        private UserControl _plItemStyleHeight;
        [AccessedThroughProperty("plItemStyleHorizontalAlign")]
        private UserControl _plItemStyleHorizontalAlign;
        [AccessedThroughProperty("plLayout")]
        private UserControl _plLayout;
        [AccessedThroughProperty("plListHeaderText")]
        private UserControl _plListHeaderText;
        [AccessedThroughProperty("plModuleTitle")]
        private UserControl _plModuleTitle;
        [AccessedThroughProperty("plNoRedirect")]
        private UserControl _plNoRedirect;
        [AccessedThroughProperty("plPageSize")]
        private UserControl _plPageSize;
        [AccessedThroughProperty("plProductTabList")]
        private UserControl _plProductTabList;
        [AccessedThroughProperty("plRedirectToCart")]
        private UserControl _plRedirectToCart;
        [AccessedThroughProperty("plReturnLimit")]
        private UserControl _plReturnLimit;
        [AccessedThroughProperty("plSep")]
        private UserControl _plSep;
        [AccessedThroughProperty("plSep1")]
        private UserControl _plSep1;
        [AccessedThroughProperty("plShowSubMenu")]
        private UserControl _plShowSubMenu;
        [AccessedThroughProperty("plSkipList")]
        private UserControl _plSkipList;
        [AccessedThroughProperty("plStaticListView")]
        private UserControl _plStaticListView;
        [AccessedThroughProperty("plStaticTemplates")]
        private UserControl _plStaticTemplates;
        [AccessedThroughProperty("plSubColumns")]
        private UserControl _plSubColumns;
        [AccessedThroughProperty("plSubHeadHtml")]
        private UserControl _plSubHeadHtml;
        [AccessedThroughProperty("plSubLeftHtml")]
        private UserControl _plSubLeftHtml;
        [AccessedThroughProperty("plSubNameTemplate")]
        private UserControl _plSubNameTemplate;
        [AccessedThroughProperty("plSubRightHtml")]
        private UserControl _plSubRightHtml;
        [AccessedThroughProperty("plSubSelectCSS")]
        private UserControl _plSubSelectCSS;
        [AccessedThroughProperty("plSubThumbnailSize")]
        private UserControl _plSubThumbnailSize;
        [AccessedThroughProperty("plTabDefaultRedirect")]
        private UserControl _plTabDefaultRedirect;
        [AccessedThroughProperty("plTableWidth")]
        private UserControl _plTableWidth;
        [AccessedThroughProperty("plTabList")]
        private UserControl _plTabList;
        [AccessedThroughProperty("plTemplate")]
        private UserControl _plTemplate;
        [AccessedThroughProperty("plThumbnailSize")]
        private UserControl _plThumbnailSize;
        [AccessedThroughProperty("rblCategoryMessage")]
        private RadioButtonList _rblCategoryMessage;
        [AccessedThroughProperty("Table2")]
        private HtmlTable _Table2;
        [AccessedThroughProperty("Table3")]
        private HtmlTable _Table3;
        [AccessedThroughProperty("tblBasic")]
        private HtmlTable _tblBasic;
        [AccessedThroughProperty("tblTabs")]
        private HtmlTable _tblTabs;
        [AccessedThroughProperty("tblTemplates")]
        private HtmlTable _tblTemplates;
        [AccessedThroughProperty("txtAlternatingItemStyleCssClass")]
        private TextBox _txtAlternatingItemStyleCssClass;
        [AccessedThroughProperty("txtCellPadding")]
        private TextBox _txtCellPadding;
        [AccessedThroughProperty("txtCellSpacing")]
        private TextBox _txtCellSpacing;
        [AccessedThroughProperty("txtColumns")]
        private TextBox _txtColumns;
        [AccessedThroughProperty("txtColWidth")]
        private TextBox _txtColWidth;
        [AccessedThroughProperty("txtCSS")]
        private TextBox _txtCSS;
        [AccessedThroughProperty("txtCssBuyButton")]
        private TextBox _txtCssBuyButton;
        [AccessedThroughProperty("txtCssClass")]
        private TextBox _txtCssClass;
        [AccessedThroughProperty("txtDetailThumbnailSize")]
        private TextBox _txtDetailThumbnailSize;
        [AccessedThroughProperty("txtGalleryThumbnailSize")]
        private TextBox _txtGalleryThumbnailSize;
        [AccessedThroughProperty("txtItemStyleCssClass")]
        private TextBox _txtItemStyleCssClass;
        [AccessedThroughProperty("txtItemStyleHeight")]
        private TextBox _txtItemStyleHeight;
        [AccessedThroughProperty("txtPageSize")]
        private TextBox _txtPageSize;
        [AccessedThroughProperty("txtReturnLimit")]
        private TextBox _txtReturnLimit;
        [AccessedThroughProperty("txtSep")]
        private TextBox _txtSep;
        [AccessedThroughProperty("txtSubHeadHtml")]
        private TextBox _txtSubHeadHtml;
        [AccessedThroughProperty("txtSubLeftHtml")]
        private TextBox _txtSubLeftHtml;
        [AccessedThroughProperty("txtSubMenuCols")]
        private TextBox _txtSubMenuCols;
        [AccessedThroughProperty("txtSubMenuSep")]
        private TextBox _txtSubMenuSep;
        [AccessedThroughProperty("txtSubNameTemplate")]
        private TextBox _txtSubNameTemplate;
        [AccessedThroughProperty("txtSubRightHtml")]
        private TextBox _txtSubRightHtml;
        [AccessedThroughProperty("txtSubSelectCSS")]
        private TextBox _txtSubSelectCSS;
        [AccessedThroughProperty("txtSubThumbnailSize")]
        private TextBox _txtSubThumbnailSize;
        [AccessedThroughProperty("txtTableWidth")]
        private TextBox _txtTableWidth;
        [AccessedThroughProperty("txtThumbnailSize")]
        private TextBox _txtThumbnailSize;

        public override void LoadSettings()
        {
            try
            {
                if (!this.Page.IsPostBack)
                {
                    if (this.ModuleSettings.Count == 0)
                    {
                        this.DoReset();
                    }
                    SharedFunctions.populateTemplateList(this.PortalId, this.ddlTemplate, ".template", "", "", "");
                    SharedFunctions.populateTemplateList(this.PortalId, this.ddlAlterTemplate, ".template", "", "", "");
                    SharedFunctions.populateTemplateList(this.PortalId, this.ddlDetailTemplate, ".template", "", "", "");
                    SharedFunctions.populateTabsList(this.lstTabs, this.PortalSettings, this.TabId.ToString());
                    SharedFunctions.populateTabsList(this.lstProductTabs, this.PortalSettings, this.TabId.ToString());
                    SharedFunctions.populateTabsList(this.ddlTabDefaultRedirect, this.PortalSettings, this.TabId.ToString());
                    SharedFunctions.populateTemplateList(this.PortalId, this.ddlHeaderText, ".text", "-1", "", "-1");
                    SharedFunctions.populateTemplateList(this.PortalId, this.ddlListHeaderText, ".text", "-1", "", "-1");
                    SharedFunctions.populateTemplateList(this.PortalId, this.ddlDetailHeaderText, ".text", "-1", "", "-1");
                    SharedFunctions.populateCategoryList(this.PortalId, this.ddlDefaultCategory, Conversions.ToString(-1), "All Categories", "");
                    SharedFunctions.LocalizeDDL(this.ddlDefaultOrder, DotNetNuke.Services.Localization.Localization.GetString("DefaultOrderList", this.LocalResourceFile));
                    this.LoadBaseSettings();
                }
            }
            catch (Exception exception1)
            {
                ProjectData.SetProjectError(exception1);
                Exception exc = exception1;
                DotNetNuke.Services.Exceptions.Exceptions.ProcessModuleLoadException((PortalModuleBase) this, exc);
                ProjectData.ClearProjectError();
            }
        }

        public override void UpdateSettings()
        {
            try
            {
                this.UpdateBaseSettings();
                ModuleController controller = new ModuleController();
                controller.UpdateModuleSetting(this.ModuleId, "lstBrowseMode", this.lstBrowseMode.SelectedValue);
                switch (this.lstBrowseMode.SelectedValue)
                {
                    case "0":
                        controller.UpdateModuleSetting(this.ModuleId, "chkFeatured", Conversions.ToString(false));
                        controller.UpdateModuleSetting(this.ModuleId, "chkBrowseCategory", Conversions.ToString(true));
                        return;

                    case "1":
                        controller.UpdateModuleSetting(this.ModuleId, "chkFeatured", Conversions.ToString(false));
                        controller.UpdateModuleSetting(this.ModuleId, "chkBrowseCategory", Conversions.ToString(false));
                        return;

                    case "2":
                        controller.UpdateModuleSetting(this.ModuleId, "chkFeatured", Conversions.ToString(true));
                        controller.UpdateModuleSetting(this.ModuleId, "chkBrowseCategory", Conversions.ToString(true));
                        return;

                    case "3":
                        controller.UpdateModuleSetting(this.ModuleId, "chkFeatured", Conversions.ToString(true));
                        controller.UpdateModuleSetting(this.ModuleId, "chkBrowseCategory", Conversions.ToString(false));
                        break;
                }
            }
            catch (Exception exception1)
            {
                ProjectData.SetProjectError(exception1);
                Exception exc = exception1;
                DotNetNuke.Services.Exceptions.Exceptions.ProcessModuleLoadException((PortalModuleBase) this, exc);
                ProjectData.ClearProjectError();
            }
        }

        protected virtual CheckBox chkCascadeResults
        {
            get
            {
                return this._chkCascadeResults;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._chkCascadeResults = value;
            }
        }

        protected virtual CheckBox chkDefaultOrderDESC
        {
            get
            {
                return this._chkDefaultOrderDESC;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._chkDefaultOrderDESC = value;
            }
        }

        protected virtual CheckBox chkExcludeFeatured
        {
            get
            {
                return this._chkExcludeFeatured;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._chkExcludeFeatured = value;
            }
        }

        protected virtual CheckBox chkExcludeProduct
        {
            get
            {
                return this._chkExcludeProduct;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._chkExcludeProduct = value;
            }
        }

        protected virtual CheckBox chkIncrementCart
        {
            get
            {
                return this._chkIncrementCart;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._chkIncrementCart = value;
            }
        }

        protected virtual CheckBox chkIndexProducts
        {
            get
            {
                return this._chkIndexProducts;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._chkIndexProducts = value;
            }
        }

        protected virtual CheckBox chkNoRedirect
        {
            get
            {
                return this._chkNoRedirect;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._chkNoRedirect = value;
            }
        }

        protected virtual CheckBox chkRedirectToCart
        {
            get
            {
                return this._chkRedirectToCart;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._chkRedirectToCart = value;
            }
        }

        protected virtual CheckBox chkShowSubMenu
        {
            get
            {
                return this._chkShowSubMenu;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._chkShowSubMenu = value;
            }
        }

        protected virtual CheckBox chkSkipList
        {
            get
            {
                return this._chkSkipList;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._chkSkipList = value;
            }
        }

        protected virtual CheckBox chkStaticListView
        {
            get
            {
                return this._chkStaticListView;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._chkStaticListView = value;
            }
        }

        protected virtual CheckBox chkStaticTemplates
        {
            get
            {
                return this._chkStaticTemplates;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._chkStaticTemplates = value;
            }
        }

        protected virtual CheckBox chkTabDefaultRedirect
        {
            get
            {
                return this._chkTabDefaultRedirect;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._chkTabDefaultRedirect = value;
            }
        }

        protected virtual DropDownList ddlAlterTemplate
        {
            get
            {
                return this._ddlAlterTemplate;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._ddlAlterTemplate = value;
            }
        }

        protected virtual DropDownList ddlDefaultCategory
        {
            get
            {
                return this._ddlDefaultCategory;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._ddlDefaultCategory = value;
            }
        }

        protected virtual DropDownList ddlDefaultOrder
        {
            get
            {
                return this._ddlDefaultOrder;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._ddlDefaultOrder = value;
            }
        }

        protected virtual DropDownList ddlDetailHeaderText
        {
            get
            {
                return this._ddlDetailHeaderText;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._ddlDetailHeaderText = value;
            }
        }

        protected virtual DropDownList ddlDetailTemplate
        {
            get
            {
                return this._ddlDetailTemplate;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._ddlDetailTemplate = value;
            }
        }

        protected virtual DropDownList ddlDirection
        {
            get
            {
                return this._ddlDirection;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._ddlDirection = value;
            }
        }

        protected virtual DropDownList ddlHeaderText
        {
            get
            {
                return this._ddlHeaderText;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._ddlHeaderText = value;
            }
        }

        protected virtual DropDownList ddlItemStyleHorizontalAlign
        {
            get
            {
                return this._ddlItemStyleHorizontalAlign;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._ddlItemStyleHorizontalAlign = value;
            }
        }

        protected virtual DropDownList ddlLayout
        {
            get
            {
                return this._ddlLayout;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._ddlLayout = value;
            }
        }

        protected virtual DropDownList ddlListHeaderText
        {
            get
            {
                return this._ddlListHeaderText;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._ddlListHeaderText = value;
            }
        }

        protected virtual DropDownList ddlTabDefaultRedirect
        {
            get
            {
                return this._ddlTabDefaultRedirect;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._ddlTabDefaultRedirect = value;
            }
        }

        protected virtual DropDownList ddlTemplate
        {
            get
            {
                return this._ddlTemplate;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._ddlTemplate = value;
            }
        }

        protected virtual UserControl dshBasic
        {
            get
            {
                return this._dshBasic;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._dshBasic = value;
            }
        }

        protected virtual UserControl dshOther
        {
            get
            {
                return this._dshOther;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._dshOther = value;
            }
        }

        protected virtual UserControl dshSubMenu
        {
            get
            {
                return this._dshSubMenu;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._dshSubMenu = value;
            }
        }

        protected virtual UserControl dshTabs
        {
            get
            {
                return this._dshTabs;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._dshTabs = value;
            }
        }

        protected virtual UserControl dshTemplates
        {
            get
            {
                return this._dshTemplates;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._dshTemplates = value;
            }
        }

        protected virtual RadioButtonList lstBrowseMode
        {
            get
            {
                return this._lstBrowseMode;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._lstBrowseMode = value;
            }
        }

        protected virtual DropDownList lstModuleTitle
        {
            get
            {
                return this._lstModuleTitle;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._lstModuleTitle = value;
            }
        }

        protected virtual DropDownList lstProductTabs
        {
            get
            {
                return this._lstProductTabs;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._lstProductTabs = value;
            }
        }

        protected virtual DropDownList lstTabs
        {
            get
            {
                return this._lstTabs;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._lstTabs = value;
            }
        }

        protected virtual UserControl plAlternatingItemStyleCssClass
        {
            get
            {
                return this._plAlternatingItemStyleCssClass;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plAlternatingItemStyleCssClass = value;
            }
        }

        protected virtual UserControl plAlterTemplate
        {
            get
            {
                return this._plAlterTemplate;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plAlterTemplate = value;
            }
        }

        protected virtual UserControl plBrowseMode
        {
            get
            {
                return this._plBrowseMode;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plBrowseMode = value;
            }
        }

        protected virtual UserControl plCascadeResults
        {
            get
            {
                return this._plCascadeResults;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plCascadeResults = value;
            }
        }

        protected virtual UserControl plCategoryMessage
        {
            get
            {
                return this._plCategoryMessage;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plCategoryMessage = value;
            }
        }

        protected virtual UserControl plCellPadding
        {
            get
            {
                return this._plCellPadding;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plCellPadding = value;
            }
        }

        protected virtual UserControl plCellSpacing
        {
            get
            {
                return this._plCellSpacing;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plCellSpacing = value;
            }
        }

        protected virtual UserControl plColumns
        {
            get
            {
                return this._plColumns;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plColumns = value;
            }
        }

        protected virtual UserControl plColWidth
        {
            get
            {
                return this._plColWidth;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plColWidth = value;
            }
        }

        protected virtual UserControl plCSS
        {
            get
            {
                return this._plCSS;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plCSS = value;
            }
        }

        protected virtual UserControl plCssBuyButton
        {
            get
            {
                return this._plCssBuyButton;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plCssBuyButton = value;
            }
        }

        protected virtual UserControl plCssClass
        {
            get
            {
                return this._plCssClass;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plCssClass = value;
            }
        }

        protected virtual UserControl plchkTabDefaultRedirect
        {
            get
            {
                return this._plchkTabDefaultRedirect;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plchkTabDefaultRedirect = value;
            }
        }

        protected virtual UserControl plDefaultCategory
        {
            get
            {
                return this._plDefaultCategory;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plDefaultCategory = value;
            }
        }

        protected virtual UserControl plDefaultOrder
        {
            get
            {
                return this._plDefaultOrder;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plDefaultOrder = value;
            }
        }

        protected virtual UserControl plDefaultOrderDESC
        {
            get
            {
                return this._plDefaultOrderDESC;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plDefaultOrderDESC = value;
            }
        }

        protected virtual UserControl plDetailHeaderText
        {
            get
            {
                return this._plDetailHeaderText;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plDetailHeaderText = value;
            }
        }

        protected virtual UserControl plDetailTemplate
        {
            get
            {
                return this._plDetailTemplate;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plDetailTemplate = value;
            }
        }

        protected virtual UserControl plDetailThumbnailSize
        {
            get
            {
                return this._plDetailThumbnailSize;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plDetailThumbnailSize = value;
            }
        }

        protected virtual UserControl plDirection
        {
            get
            {
                return this._plDirection;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plDirection = value;
            }
        }

        protected virtual UserControl plExcludeFeatured
        {
            get
            {
                return this._plExcludeFeatured;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plExcludeFeatured = value;
            }
        }

        protected virtual UserControl plExcludeProduct
        {
            get
            {
                return this._plExcludeProduct;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plExcludeProduct = value;
            }
        }

        protected virtual UserControl plGalleryThumbnailSize
        {
            get
            {
                return this._plGalleryThumbnailSize;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plGalleryThumbnailSize = value;
            }
        }

        protected virtual UserControl plHeaderText
        {
            get
            {
                return this._plHeaderText;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plHeaderText = value;
            }
        }

        protected virtual UserControl plIncrementCart
        {
            get
            {
                return this._plIncrementCart;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plIncrementCart = value;
            }
        }

        protected virtual UserControl plIndexProducts
        {
            get
            {
                return this._plIndexProducts;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plIndexProducts = value;
            }
        }

        protected virtual UserControl plItemStyleCssClass
        {
            get
            {
                return this._plItemStyleCssClass;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plItemStyleCssClass = value;
            }
        }

        protected virtual UserControl plItemStyleHeight
        {
            get
            {
                return this._plItemStyleHeight;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plItemStyleHeight = value;
            }
        }

        protected virtual UserControl plItemStyleHorizontalAlign
        {
            get
            {
                return this._plItemStyleHorizontalAlign;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plItemStyleHorizontalAlign = value;
            }
        }

        protected virtual UserControl plLayout
        {
            get
            {
                return this._plLayout;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plLayout = value;
            }
        }

        protected virtual UserControl plListHeaderText
        {
            get
            {
                return this._plListHeaderText;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plListHeaderText = value;
            }
        }

        protected virtual UserControl plModuleTitle
        {
            get
            {
                return this._plModuleTitle;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plModuleTitle = value;
            }
        }

        protected virtual UserControl plNoRedirect
        {
            get
            {
                return this._plNoRedirect;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plNoRedirect = value;
            }
        }

        protected virtual UserControl plPageSize
        {
            get
            {
                return this._plPageSize;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plPageSize = value;
            }
        }

        protected virtual UserControl plProductTabList
        {
            get
            {
                return this._plProductTabList;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plProductTabList = value;
            }
        }

        protected virtual UserControl plRedirectToCart
        {
            get
            {
                return this._plRedirectToCart;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plRedirectToCart = value;
            }
        }

        protected virtual UserControl plReturnLimit
        {
            get
            {
                return this._plReturnLimit;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plReturnLimit = value;
            }
        }

        protected virtual UserControl plSep
        {
            get
            {
                return this._plSep;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plSep = value;
            }
        }

        protected virtual UserControl plSep1
        {
            get
            {
                return this._plSep1;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plSep1 = value;
            }
        }

        protected virtual UserControl plShowSubMenu
        {
            get
            {
                return this._plShowSubMenu;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plShowSubMenu = value;
            }
        }

        protected virtual UserControl plSkipList
        {
            get
            {
                return this._plSkipList;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plSkipList = value;
            }
        }

        protected virtual UserControl plStaticListView
        {
            get
            {
                return this._plStaticListView;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plStaticListView = value;
            }
        }

        protected virtual UserControl plStaticTemplates
        {
            get
            {
                return this._plStaticTemplates;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plStaticTemplates = value;
            }
        }

        protected virtual UserControl plSubColumns
        {
            get
            {
                return this._plSubColumns;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plSubColumns = value;
            }
        }

        protected virtual UserControl plSubHeadHtml
        {
            get
            {
                return this._plSubHeadHtml;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plSubHeadHtml = value;
            }
        }

        protected virtual UserControl plSubLeftHtml
        {
            get
            {
                return this._plSubLeftHtml;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plSubLeftHtml = value;
            }
        }

        protected virtual UserControl plSubNameTemplate
        {
            get
            {
                return this._plSubNameTemplate;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plSubNameTemplate = value;
            }
        }

        protected virtual UserControl plSubRightHtml
        {
            get
            {
                return this._plSubRightHtml;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plSubRightHtml = value;
            }
        }

        protected virtual UserControl plSubSelectCSS
        {
            get
            {
                return this._plSubSelectCSS;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plSubSelectCSS = value;
            }
        }

        protected virtual UserControl plSubThumbnailSize
        {
            get
            {
                return this._plSubThumbnailSize;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plSubThumbnailSize = value;
            }
        }

        protected virtual UserControl plTabDefaultRedirect
        {
            get
            {
                return this._plTabDefaultRedirect;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plTabDefaultRedirect = value;
            }
        }

        protected virtual UserControl plTableWidth
        {
            get
            {
                return this._plTableWidth;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plTableWidth = value;
            }
        }

        protected virtual UserControl plTabList
        {
            get
            {
                return this._plTabList;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plTabList = value;
            }
        }

        protected virtual UserControl plTemplate
        {
            get
            {
                return this._plTemplate;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plTemplate = value;
            }
        }

        protected virtual UserControl plThumbnailSize
        {
            get
            {
                return this._plThumbnailSize;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._plThumbnailSize = value;
            }
        }

        protected virtual RadioButtonList rblCategoryMessage
        {
            get
            {
                return this._rblCategoryMessage;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._rblCategoryMessage = value;
            }
        }

        protected virtual HtmlTable Table2
        {
            get
            {
                return this._Table2;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._Table2 = value;
            }
        }

        protected virtual HtmlTable Table3
        {
            get
            {
                return this._Table3;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._Table3 = value;
            }
        }

        protected virtual HtmlTable tblBasic
        {
            get
            {
                return this._tblBasic;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._tblBasic = value;
            }
        }

        protected virtual HtmlTable tblTabs
        {
            get
            {
                return this._tblTabs;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._tblTabs = value;
            }
        }

        protected virtual HtmlTable tblTemplates
        {
            get
            {
                return this._tblTemplates;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._tblTemplates = value;
            }
        }

        protected virtual TextBox txtAlternatingItemStyleCssClass
        {
            get
            {
                return this._txtAlternatingItemStyleCssClass;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtAlternatingItemStyleCssClass = value;
            }
        }

        protected virtual TextBox txtCellPadding
        {
            get
            {
                return this._txtCellPadding;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtCellPadding = value;
            }
        }

        protected virtual TextBox txtCellSpacing
        {
            get
            {
                return this._txtCellSpacing;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtCellSpacing = value;
            }
        }

        protected virtual TextBox txtColumns
        {
            get
            {
                return this._txtColumns;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtColumns = value;
            }
        }

        protected virtual TextBox txtColWidth
        {
            get
            {
                return this._txtColWidth;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtColWidth = value;
            }
        }

        protected virtual TextBox txtCSS
        {
            get
            {
                return this._txtCSS;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtCSS = value;
            }
        }

        protected virtual TextBox txtCssBuyButton
        {
            get
            {
                return this._txtCssBuyButton;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtCssBuyButton = value;
            }
        }

        protected virtual TextBox txtCssClass
        {
            get
            {
                return this._txtCssClass;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtCssClass = value;
            }
        }

        protected virtual TextBox txtDetailThumbnailSize
        {
            get
            {
                return this._txtDetailThumbnailSize;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtDetailThumbnailSize = value;
            }
        }

        protected virtual TextBox txtGalleryThumbnailSize
        {
            get
            {
                return this._txtGalleryThumbnailSize;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtGalleryThumbnailSize = value;
            }
        }

        protected virtual TextBox txtItemStyleCssClass
        {
            get
            {
                return this._txtItemStyleCssClass;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtItemStyleCssClass = value;
            }
        }

        protected virtual TextBox txtItemStyleHeight
        {
            get
            {
                return this._txtItemStyleHeight;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtItemStyleHeight = value;
            }
        }

        protected virtual TextBox txtPageSize
        {
            get
            {
                return this._txtPageSize;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtPageSize = value;
            }
        }

        protected virtual TextBox txtReturnLimit
        {
            get
            {
                return this._txtReturnLimit;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtReturnLimit = value;
            }
        }

        protected virtual TextBox txtSep
        {
            get
            {
                return this._txtSep;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtSep = value;
            }
        }

        protected virtual TextBox txtSubHeadHtml
        {
            get
            {
                return this._txtSubHeadHtml;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtSubHeadHtml = value;
            }
        }

        protected virtual TextBox txtSubLeftHtml
        {
            get
            {
                return this._txtSubLeftHtml;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtSubLeftHtml = value;
            }
        }

        protected virtual TextBox txtSubMenuCols
        {
            get
            {
                return this._txtSubMenuCols;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtSubMenuCols = value;
            }
        }

        protected virtual TextBox txtSubMenuSep
        {
            get
            {
                return this._txtSubMenuSep;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtSubMenuSep = value;
            }
        }

        protected virtual TextBox txtSubNameTemplate
        {
            get
            {
                return this._txtSubNameTemplate;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtSubNameTemplate = value;
            }
        }

        protected virtual TextBox txtSubRightHtml
        {
            get
            {
                return this._txtSubRightHtml;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtSubRightHtml = value;
            }
        }

        protected virtual TextBox txtSubSelectCSS
        {
            get
            {
                return this._txtSubSelectCSS;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtSubSelectCSS = value;
            }
        }

        protected virtual TextBox txtSubThumbnailSize
        {
            get
            {
                return this._txtSubThumbnailSize;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtSubThumbnailSize = value;
            }
        }

        protected virtual TextBox txtTableWidth
        {
            get
            {
                return this._txtTableWidth;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtTableWidth = value;
            }
        }

        protected virtual TextBox txtThumbnailSize
        {
            get
            {
                return this._txtThumbnailSize;
            }
            [MethodImpl(MethodImplOptions.Synchronized)]
            set
            {
                this._txtThumbnailSize = value;
            }
        }
    }
}

